﻿// This class is "generated" and will be overwritten.
// Your customizations should be made in UsersRecord.cs

using System;
using System.Collections;
using System.Data.SqlTypes;
using BaseClasses;
using BaseClasses.Data;
using BaseClasses.Data.SqlProvider;

namespace BUGLOG.Business
{

/// <summary>
/// The generated superclass for the <see cref="UsersRecord"></see> class.
/// </summary>
/// <remarks>
/// This class is not intended to be instantiated directly.  To obtain an instance of this class, 
/// use the methods of the <see cref="UsersTable"></see> class.
/// </remarks>
/// <seealso cref="UsersTable"></seealso>
/// <seealso cref="UsersRecord"></seealso>
public class BaseUsersRecord : PrimaryKeyRecord
{

	public readonly static UsersTable TableUtils = UsersTable.Instance;

	// Constructors
 
	protected BaseUsersRecord() : base(TableUtils)
	{
	}

	protected BaseUsersRecord(PrimaryKeyRecord record) : base(record, TableUtils)
	{
	}







#region "Convenience methods to get/set values of fields"

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.UserID field.
	/// </summary>
	public ColumnValue GetUserId0Value()
	{
		return this.GetValue(TableUtils.UserId0Column);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.UserID field.
	/// </summary>
	public Int32 GetUserId0FieldValue()
	{
		return this.GetValue(TableUtils.UserId0Column).ToInt32();
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.UserName field.
	/// </summary>
	public ColumnValue GetUserName0Value()
	{
		return this.GetValue(TableUtils.UserName0Column);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.UserName field.
	/// </summary>
	public string GetUserName0FieldValue()
	{
		return this.GetValue(TableUtils.UserName0Column).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.UserName field.
	/// </summary>
	public void SetUserName0FieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.UserName0Column);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.UserName field.
	/// </summary>
	public void SetUserName0FieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.UserName0Column);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.FirstName field.
	/// </summary>
	public ColumnValue GetFirstNameValue()
	{
		return this.GetValue(TableUtils.FirstNameColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.FirstName field.
	/// </summary>
	public string GetFirstNameFieldValue()
	{
		return this.GetValue(TableUtils.FirstNameColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.FirstName field.
	/// </summary>
	public void SetFirstNameFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.FirstNameColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.FirstName field.
	/// </summary>
	public void SetFirstNameFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.FirstNameColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.LastName field.
	/// </summary>
	public ColumnValue GetLastNameValue()
	{
		return this.GetValue(TableUtils.LastNameColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.LastName field.
	/// </summary>
	public string GetLastNameFieldValue()
	{
		return this.GetValue(TableUtils.LastNameColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.LastName field.
	/// </summary>
	public void SetLastNameFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.LastNameColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.LastName field.
	/// </summary>
	public void SetLastNameFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.LastNameColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.Department field.
	/// </summary>
	public ColumnValue GetDepartmentValue()
	{
		return this.GetValue(TableUtils.DepartmentColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.Department field.
	/// </summary>
	public string GetDepartmentFieldValue()
	{
		return this.GetValue(TableUtils.DepartmentColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Department field.
	/// </summary>
	public void SetDepartmentFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.DepartmentColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Department field.
	/// </summary>
	public void SetDepartmentFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.DepartmentColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.Address field.
	/// </summary>
	public ColumnValue GetAddressValue()
	{
		return this.GetValue(TableUtils.AddressColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.Address field.
	/// </summary>
	public string GetAddressFieldValue()
	{
		return this.GetValue(TableUtils.AddressColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Address field.
	/// </summary>
	public void SetAddressFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.AddressColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Address field.
	/// </summary>
	public void SetAddressFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.AddressColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.phoneNumber field.
	/// </summary>
	public ColumnValue GetphoneNumberValue()
	{
		return this.GetValue(TableUtils.phoneNumberColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.phoneNumber field.
	/// </summary>
	public string GetphoneNumberFieldValue()
	{
		return this.GetValue(TableUtils.phoneNumberColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.phoneNumber field.
	/// </summary>
	public void SetphoneNumberFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.phoneNumberColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.phoneNumber field.
	/// </summary>
	public void SetphoneNumberFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.phoneNumberColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.EmailAddress field.
	/// </summary>
	public ColumnValue GetEmailAddressValue()
	{
		return this.GetValue(TableUtils.EmailAddressColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.EmailAddress field.
	/// </summary>
	public string GetEmailAddressFieldValue()
	{
		return this.GetValue(TableUtils.EmailAddressColumn).ToString();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.EmailAddress field.
	/// </summary>
	public void SetEmailAddressFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.EmailAddressColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.EmailAddress field.
	/// </summary>
	public void SetEmailAddressFieldValue(string val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.EmailAddressColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public ColumnValue GetRegistrationDateValue()
	{
		return this.GetValue(TableUtils.RegistrationDateColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public DateTime GetRegistrationDateFieldValue()
	{
		return this.GetValue(TableUtils.RegistrationDateColumn).ToDateTime();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public void SetRegistrationDateFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.RegistrationDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public void SetRegistrationDateFieldValue(string val)
	{
		this.SetString(val, TableUtils.RegistrationDateColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public void SetRegistrationDateFieldValue(DateTime val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.RegistrationDateColumn);
	}
	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.RoleID field.
	/// </summary>
	public ColumnValue GetRoleIDValue()
	{
		return this.GetValue(TableUtils.RoleIDColumn);
	}

	/// <summary>
	/// This is a convenience method that provides direct access to the value of the record's Users_.RoleID field.
	/// </summary>
	public Int32 GetRoleIDFieldValue()
	{
		return this.GetValue(TableUtils.RoleIDColumn).ToInt32();
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public void SetRoleIDFieldValue(ColumnValue val)
	{
		this.SetValue(val, TableUtils.RoleIDColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public void SetRoleIDFieldValue(string val)
	{
		this.SetString(val, TableUtils.RoleIDColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public void SetRoleIDFieldValue(double val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.RoleIDColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public void SetRoleIDFieldValue(decimal val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.RoleIDColumn);
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public void SetRoleIDFieldValue(long val)
	{
		ColumnValue cv = new ColumnValue(val);
		this.SetValue(cv, TableUtils.RoleIDColumn);
	}


#endregion

#region "Convenience methods to get field names"

	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.UserID field.
	/// </summary>
	public Int32 UserId0
	{
		get
		{
			return this.GetValue(TableUtils.UserId0Column).ToInt32();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.UserId0Column);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool UserId0Specified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.UserId0Column);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.UserID field.
	/// </summary>
	public string UserId0Default
	{
		get
		{
			return TableUtils.UserId0Column.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.UserName field.
	/// </summary>
	public string UserName0
	{
		get
		{
			return this.GetValue(TableUtils.UserName0Column).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.UserName0Column);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool UserName0Specified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.UserName0Column);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.UserName field.
	/// </summary>
	public string UserName0Default
	{
		get
		{
			return TableUtils.UserName0Column.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.FirstName field.
	/// </summary>
	public string FirstName
	{
		get
		{
			return this.GetValue(TableUtils.FirstNameColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.FirstNameColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool FirstNameSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.FirstNameColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.FirstName field.
	/// </summary>
	public string FirstNameDefault
	{
		get
		{
			return TableUtils.FirstNameColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.LastName field.
	/// </summary>
	public string LastName
	{
		get
		{
			return this.GetValue(TableUtils.LastNameColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.LastNameColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool LastNameSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.LastNameColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.LastName field.
	/// </summary>
	public string LastNameDefault
	{
		get
		{
			return TableUtils.LastNameColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.Department field.
	/// </summary>
	public string Department
	{
		get
		{
			return this.GetValue(TableUtils.DepartmentColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.DepartmentColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool DepartmentSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.DepartmentColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Department field.
	/// </summary>
	public string DepartmentDefault
	{
		get
		{
			return TableUtils.DepartmentColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.Address field.
	/// </summary>
	public string Address
	{
		get
		{
			return this.GetValue(TableUtils.AddressColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.AddressColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool AddressSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.AddressColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.Address field.
	/// </summary>
	public string AddressDefault
	{
		get
		{
			return TableUtils.AddressColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.phoneNumber field.
	/// </summary>
	public string phoneNumber
	{
		get
		{
			return this.GetValue(TableUtils.phoneNumberColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.phoneNumberColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool phoneNumberSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.phoneNumberColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.phoneNumber field.
	/// </summary>
	public string phoneNumberDefault
	{
		get
		{
			return TableUtils.phoneNumberColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.EmailAddress field.
	/// </summary>
	public string EmailAddress
	{
		get
		{
			return this.GetValue(TableUtils.EmailAddressColumn).ToString();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.EmailAddressColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool EmailAddressSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.EmailAddressColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.EmailAddress field.
	/// </summary>
	public string EmailAddressDefault
	{
		get
		{
			return TableUtils.EmailAddressColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public DateTime RegistrationDate
	{
		get
		{
			return this.GetValue(TableUtils.RegistrationDateColumn).ToDateTime();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.RegistrationDateColumn);
			
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool RegistrationDateSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.RegistrationDateColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RegistrationDate field.
	/// </summary>
	public string RegistrationDateDefault
	{
		get
		{
			return TableUtils.RegistrationDateColumn.DefaultValue;
		}
	}
	/// <summary>
	/// This is a property that provides direct access to the value of the record's Users_.RoleID field.
	/// </summary>
	public Int32 RoleID
	{
		get
		{
			return this.GetValue(TableUtils.RoleIDColumn).ToInt32();
		}
		set
		{
			ColumnValue cv = new ColumnValue(value);
			this.SetValue(cv, TableUtils.RoleIDColumn);
		}
	}


	/// <summary>
	/// This is a convenience method that can be used to determine that the column is set.
	/// </summary>
	public bool RoleIDSpecified
	{
		get
		{
			ColumnValue val = this.GetValue(TableUtils.RoleIDColumn);
            if (val == null || val.IsNull)
            {
                return false;
            }
            return true;
		}
	}

	/// <summary>
	/// This is a convenience method that allows direct modification of the value of the record's Users_.RoleID field.
	/// </summary>
	public string RoleIDDefault
	{
		get
		{
			return TableUtils.RoleIDColumn.DefaultValue;
		}
	}


#endregion
}

}
